System and method for organizing search criteria match results

ABSTRACT

In a system and method for organizing database search criteria match results which are generated through a search engine adapted to generate system databases upon the processing of search criteria established and submitted by a system user, the system is adapted to define and group the search criteria match results for presentation to the user based upon the relative emphasis or de-emphasis of such results. The system includes a context software module, for enabling the generating of a context database consisting of content, links, and layouts organized for presentation to the user, which module is adapted to determine and specify the context database based on a current context and settings. The system also includes a criteria software module for enabling the generating of a comparison database, adapted to enable criteria to be submitted, modified, and input by the user to generate comparison database information. It also includes a resolution software module for enabling the establishing of a relationship between a context database and a comparison database without modifying the context organized for presentation to the user. It further may include an argument software module for enabling an argument consisting of an expression constructed for a specific purpose to be formed and submitted. The system may also include a display axis software module for generating axes consisting of distinct search submissions to enable the display of search criteria matches.

CROSS-REFERENCE TO RELATED APPLICATION

[0001] This application is a continuation of co-pending application Ser.No. 09/747,334 filed on Dec. 22, 2000.

COMPUTER PROGRAM LISTING APPENDIX

[0002] A Compact Disc-Recordable (CD-R) which includes a computerprogram listing is submitted with this application, since the computerprogram listing has over 300 lines of code. The material on the CD-R isincorporated by reference herein.

BACKGROUND OF THE INVENTION

[0003] 1. Field of the Invention

[0004] This invention relates generally to improvements in systems andmethods for organizing search criteria matches, and, more particularly,to a new and improved system and method for defining and grouping searchcriteria matches on the basis of the relative emphasis or de-emphasis ofsuch matches, for presentation to the user, wherein the search criteriamatches are generated by processing search criteria established andsubmitted by a user through a search engine adapted to generatedatabases for the system.

[0005] A portion of the disclosure of this patent document containsmaterial which is subject to copyright protection. The copyright ownerhas no objection to the facsimile reproduction by anyone of the patentdocument or the patent disclosure, as it appears in the Patent andTrademark Office patent file or records, but otherwise reserves allcopyright rights whatsoever.

[0006] A CD-R is included as the official copy of the computer programlisting of the preferred form of source code consisting of over 300lines of code, and is filed with and a part of this application andincorporated by reference herein.

[0007] 2. Description of the Related Art

[0008] It has been known to provide an interactive environment forviewing, browsing, searching, finding, accessing, and obtaining contentand/or information, through client-server networks including computersand the Internet. Such systems present information to a user where theuser has varying degrees of interest in the information, which may ormay not change based on context and/or time.

[0009] However, while desired information exists, it is hard to isolate,due to an ever expanding realm of human knowledge. For any givencontext, desired information may be lost in a huge body of irrelevantinformation. Searching this vast collection of knowledge is asignificant problem.

[0010] Further, it has been known to provide currently available searchmechanisms which enable the user to conduct searches. These technologiesvary in capability ranging from being of little use to being highlyeffective.

[0011] For many users, however, these method and technologies do notprovide satisfactory results. Their operation is cryptic and/orcumbersome, and therefore not easily implemented by many people.

[0012] On the one hand, fundamental user control over the search processis currently relatively simple but not very effective, in that the usermay conduct a simple search but still be unable to find the desiredinformation which may be lost in the unwanted information located, ormay not be found at all. On the other hand, advanced control issuccessfully used by a very few, since its interface requires terse andcryptic syntax, unforgiving methodologies, and obscure nomenclature, asin boolean operators for example.

[0013] One of the most significant problems with this searching processis that although the user knows what he wants to find, expressing thisdesire to a search mechanism requires an unnatural exact syntax andterminology to generate desirable results. Search mechanisms presentlydo precisely what the user says, rather than what the user means. Ifsearch mechanisms were capable of interpreting the user input, includingall contextual factors regarding the user and the query, they might beable to do what the user means, yielding much more satisfactory results.

[0014] Another aspect of user frustration regarding any search activityconcerns not knowing what the system is doing. Pressing a button canstill leave the user wondering whether the system understood therequest. This type of frustration has a significant impact on theoverall effectiveness of any system including a search system.

[0015] Indices are presently used by many search services. These attemptto organize information in a way that allows users to find what they arelooking for with greater ease.

[0016] Search engines are also employed by many services. These allowthe user to specify a search “parameter”. The search engine theninterprets this parameter and presents the user with its results. Theseresults are presented in an ordered list and, in some cases, arecategorized in some fashion. Many times, however, the system will dowhat the user said, rather than to present what the user really wants.The system will show a large superset of possibilities, overwhelming theuser with information overload. In such cases, the user must examine alist of results in order to find what is being looked for.

[0017] Search technologies are making advances presently in interpretinguser input and seeking to derive true user intent. One approach involvesthe formation of question databases allowing the user to specify aquestion and obtain possible answers. Some technologies attempt tointerpret queries using a variety of schemes to process user input. Thepresentation of output, however, is still restricted to lists. Inaddition, the scope of this technology is limited to the subjectscontained within their respective databases.

[0018] Therefore, those concerned with the development and use ofimproved search criteria matches organizing systems and methods and thelike have recognized the need for improved systems and methods forinterpreting user input, deriving and applying user intent, andpresenting output in an efficient and effective manner.

[0019] Accordingly, the present invention fulfills these needs byproviding efficient and effective systems and methods for providing aresponsive interactive environment that does not make assumptionsregarding what the user desires. Rather, they leverage off of thefamiliar, and provide the user with an effective means for indicatingwhat they really want through an intuitive refinement of the searchquery submission. The system enhances any information generated in asearch by identifying, ranking, and/or sorting such information for theuser. It controls the presentation of any collection of content and databased on results passed to it from its current sources in addition touser direction. The sources can be anything capable of providing data,including but not limited to search engines. Combining these techniquesand applying them efficiently creates an effective method for findinginformation.

SUMMARY OF THE INVENTION

[0020] Briefly, and in general terms, the present invention provides anew and improved system and method for interactively applying a set ofdisplay rules that emphasizes and de-emphasizes in varying degrees anycollection of content and information links, without disturbing thecontent, organization, functionality, or layout thereof. It enables theuser to find, sort, access, and view a collection of content andinformation in an effective manner through the use of intuitiveinteractive control, display cues and enhancement, and persistent searchmethodologies.

[0021] By way of example, and not by way of limitation, the presentinvention provides a new and improved system for organizing searchcriteria match results, generated by processing search criteriaestablished and submitted by a user through a search engine adapted togenerate system databases, in an effective and efficient manner. Itincludes presentation cues to show relevancy, which are particularlyeffective when used with familiar content and layout presentation. Itenables the layout to remain the same both before and after all queries,showing the results without disturbing the layout of the content. For aWeb page search, the layout and functionality of the page displaysunranked links in one way, and ranked links in a different way throughstyle, color, and/or symbolic modification. The presentation may reflectthe ranking of the link, while the location and functionality of allitems on the page remains as before the results were applied.

[0022] The system and method are adapted to operate generally, forexample, within a display environment wherein there are choices such aslinks presented to the user, and in particular within the framework ofWorld Wide Web browsers and browser-like environments. They are furtheradapted to take ranking data associated with the choices or linkspresented to the user, and, while preserving the existing organizationand graphical layout of the information, to display the choices or linksin such a manner that the ranking of the choices is clearly conveyed tothe user. The ranking data may come from any source, such as the outputof a search engine. For example, such a search engine may generate aprioritized list by using a score assigned to the list of items, whereinthe list includes ranked choice or link items. The system may modifyselected display characteristics of the choice or link items, leavingall other characteristics of the display unchanged. The characteristicsmodified may include, for example, choice or link size, style, hue,luminescence, intensity, and animation. Such modifications may beapplied to the choice or link background.

[0023] The system can accommodate and clearly communicate to the userthe relevancy of each presented item with respect to any number ofuser-defined or predefined categories, through emphasis, de-emphasis,and designation. The system further enables effective and intuitiveconstruction, modification, and application of boolean search arguments.It also includes controls that notify the user of its task progress tominimize frustration and enable the user to focus on the task at hand.The user is able to utilize a persistent search technique, which appliesparameters constantly modifying the display of whatever the user choosesto view as the user views it.

[0024] More particularly, the present invention constitutes a system fororganizing database matches generated by processing search criteriaestablished and submitted by a user through a search engine adapted togenerate databases for the system. The system is adapted to define andgroup search criteria match results on the basis of the relativeemphasis or de-emphasis thereof for presentation to the user.

[0025] The system, in accordance with the invention, includes a contextsoftware module, for enabling the generating of a context databaseconsisting of content, links, and layouts organized for presentation tothe user, adapted to determine and specify the context database based ona current context and settings. The system further includes a criteriasoftware module for enabling a comparison database to be generated,adapted to enable criteria to be submitted and modified, and to enablethe user to input criteria for generating comparison databaseinformation.

[0026] The system also includes a results resolution software module forenabling a relationship to be established between a context database anda comparison database, without modifying the context as organized forpresentation to the user. The system may further include an argumentsoftware module for enabling an argument consisting of an expressionconstructed for a specific purpose to be formed and submitted.

[0027] The system of the present invention may also include a displayaxis software module for generating axes for the display of searchcriteria matches responsive to the interaction of the results resolutionsoftware module with the display axes. A search axis comprises adistinct search submission. The system may still further include acontrol state software module for enabling the user to manipulate thesystem.

[0028] These and other elements, objects, and advantages of theinvention will become apparent from the following more detaileddescription, when taken in conjunction with the accompanying drawings ofillustrative embodiments.

BRIEF DESCRIPTION OF THE DRAWINGS

[0029]FIG. 1 is a block diagram of a system and method for organizingsearch criteria matches, in accordance with the present invention;

[0030]FIG. 2 is a flow chart of the path of a sequence of links leadingfrom context to context, in the practice of the invention;

[0031]FIG. 3 is a diagram showing a sequence of refine controloperations, in accordance with the invention;

[0032]FIG. 4 is a diagram illustrating a series of menus for controllingthe operation of the system and method, pursuant to the presentinvention;

[0033]FIG. 5 is a diagram of a user interface in an initial state, inaccordance with the present invention;

[0034]FIG. 6 is a similar diagram of the user interface after a searchoperation, pursuant to the present invention;

[0035]FIG. 7 is a similar diagram of a user interface after a refineoperation, in the practice of the invention;

[0036]FIG. 8 is a flow chart of a sequence of operations, in accordancewith the present invention; and

[0037]FIG. 9 is a flow chart of the operation of a control mechanism, inaccordance with the invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0038] The present invention is directed to an improved system andmethod for organizing search criteria matches in an efficient andeffective manner, wherein the matches are generated by processing searchcriteria established and submitted by a user through a search engineadapted to generate databases for the system. The improved system andmethod provides effective and efficient defining and grouping of searchcriteria matches on the basis of the relative emphasis or de-emphasisthereof for presentation to the user. The improved system and method arefurther adapted to define and group search criteria match results so asto present the content, layout, and functionality of links to searchcriteria match result hits and links to search criteria match resultnon-hits, while conveying the distinctions therebetween. The preferredembodiments of the improved system and method are illustrated anddescribed herein by way of example only and not by way of limitation.

[0039] The system and method herein are adapted to provide interactivedisplay control of information while preserving the original layout andorganization of the information, and while adding cues that categorizeand distinguish information in a readily grasped manner. They utilizedifferent methods of emphasis, de-emphasis, and designation toaccommodate and clearly communicate to the user the relevancy of eachpresented item with respect to any number of user defined or pre-definedcategories. For example, relevancy with regard to a particular parametermay be tied to a color display of the link text, while the relevancywith regard to a second parameter may be conveyed through therepresentation of the background of the text. Through the use of avariety of devices such as, but not limited to, symbologies or icons,the relevance of each item with regard to each of a plurality ofparameters may be clearly conveyed to the user.

[0040] Parameters may be treated as equivalent, as for example by beingmapped to a common display method, or treated as separate, as forexample by mapping and displaying each term with different methods.Relevancy with regard to a single parameter may be conveyed through theuse of variable display characteristics of a symbology, while degree ofrelevancy may be reflected in user discernable variation in mappingsymbology. A term that maps to more than one parameter may displaymultiple parameters, enabling the user to easily determine therelationship between the displayed content and layout with regard tospecified parameters, and by adjusting these relationships tointeractively refine an information culling process.

[0041] The system and method herein are further adapted to providesimple and intuitive construction, modification, and application ofboolean search arguments. The display of such operations may take manyforms, as for example for items that contain two distinct terms, theequivalent of a boolean AND operation may be displayed with moreemphasis than any item matching only one term. A NOT operation mayenable the affected item to be de-emphasized.

[0042] Such system and method herein may also include controls thatnotify the user of the progress of tasks to minimize frustration,enabling the user to focus on the task at hand, particularly with tasksthat take significant time, such as tasks in World Wide Web applicationsthat are executed at the server side, as well as other lengthyoperations.

[0043] The system and method may be applied to any viewable context atany time, as it does not disturb content, organization, orfunctionality. This enables the user to use a persistent searchtechnique, applying parameters constantly modifying the display ofwhatever the user chooses to view as the user views it. Calling up a setof information in the display applies the parameters and results to thatinstance of content and its organization. The same parameters may beapplied to any context, either by calling up a different context orenabling the parameters while viewing any context.

[0044] In the method of operation of the system, the techniques areapplied in a manner that adds the powerful capabilities therein withoutdisturbing content familiarity. The implementation utilizes suitabletechniques available to yield responsive performance. Many interactionsappear to be instantaneous, while others keep the user informed or areimplemented in such a way that the impact thereof is minimized andde-emphasized. Cues are tailored to any given application to bestemphasize and de-emphasize subject matter. Emphasis and de-emphasis maybe expressed through manipulation of attributes such as for examplesize, color, style, highlight, and background presentation. Symbologiesmay also be integrated into the display.

[0045] Referring now to the drawings, wherein like reference numeralsdenote like or corresponding parts throughout the drawing figures, andparticularly to FIGS. 19, and in particular to FIG. 1, the system 10 isadapted to organize database matches generated by processing searchcriteria established and submitted by a user 12 through a search engine14 adapted to generate databases for the system 10. Search criteriacomprise user-specified parameters adapted to form comparison databases16. A comparison database 16 comprises search criteria hits, adapted tobe used in conjunction with a context database 18 to determine searchcriteria matches. The comparison database 16 further comprises thecurrent comparison database, and links adapted to access context. A hitcomprises a single positive result returned from a search submission.

[0046] A context database 18 comprises a database adapted to beassociated with a context, which comprises content, links, and layoutsorganized for presentation to the user 12. A context database 18 furthercomprises a collection of links which reference contexts andinformation. The context database 18 also comprises the current contextdatabase, links to World Wide Web pages, and links adapted to beaccessible within the current context. The context database 18 furthercomprises links associated with accessible links. The associated linkscomprise a plurality of links appearing within a sub-context accessedthrough a link located within the current context, wherein a sub-contextcomprises a context accessed through a link which exists within anothercontext.

[0047] A link comprises an interactive control adapted to enable a userto change the current context to the context associated with the link.The links comprise Uniform Resource Locators (URLs), wherein each URLcomprises an absolute address of a context in the World Wide Web. Eachlink is adapted to access subordinated contexts, links, and content.Each link is adapted to access subordinate links through a link pathcomprising a sequence of links leading from context to context in acontinuous path, as shown in FIG. 2. The link path is adapted to enablethe user to change contexts by activating a first link in the path, andby activating another link located within the context which changes thecontext within which a further link in the path is located. Searchcriteria matches comprise search criteria match links.

[0048] The system 10 includes a context software module 20 for enablinga context database 18 to be generated, adapted to determine and specifythe context database 18 based on a current context and settings. Thecontext software module 20 is adapted to generate the context database18 based on static values, or based on process submissions. The system10 further includes a criteria software module 22, for enabling acomparison database 16 to be generated, adapted to enable criteria to besubmitted and modified, and to enable the user 12 to input criteria forgenerating comparison database information. The criteria software module22 includes a criteria modification software module for enabling theuser to modify the input criteria term and the processing thereof. Thecriteria modification software module 22 is adapted to attributedesignation of a criteria term, to change the criteria term, and to flagthe criteria term for exclusion of the criteria term from consideration.The criteria modification software module 22 is also adapted to adjust aboolean operator flag of the criteria term, to adjust a display axisflag of the criteria term, and to adjust placement of the criteria termin a submission order.

[0049] The system 10 further comprises a results resolution softwaremodule 24, for enabling a relationship to be established between thecontext database 18 and the comparison database 16, without modifyingthe context as organized for presentation to the user 12, and forevaluating the context database 18 against each comparison database 16.The results resolution software module 24 is adapted to compare eachcontext database link to each comparison database link. The system 10further comprises an interacting module for enabling the contextsoftware module 20, the criteria software module 22, and the resultsresolution software module 24 to interact with each other. Theinteracting module comprises a database for interconnecting andtransmitting information among the context software module 20, thecriteria software module 22, and the results resolution software module24. The interactive module database includes data bus structuresinternal in or external to a computer. The external data bus structurescomprise the Internet.

[0050] The system 10 may also include an argument software module 26 forenabling the forming and submission of an argument, which comprises anexpression constructed for a specific purpose. The construction of anargument is adapted to be specific to a specific submission destination.The system 10 is also adapted to enable the context to be changed,whereupon the arguments are applied within the changed context. Theargument software module 26 is further adapted to determine whether thecontext database 18 needs to be updated, and also to notify the resultsresolution software module 24 upon updating of the context database 18and the comparison database 16. The argument software module 26 isadapted to accept a current criteria queue, an associated setting, and acurrent context setting, and to determine the need for updating thecontext database 18 responsive to the settings and the status of anexisting context database 18 and a comparison database 16. A criteriaqueue includes criteria used to form arguments. The criteria queue isadapted to enable the user to modify the criteria. Changing the contextis adapted to modify the current context settings so as to affectargument submissions. The system 10 further may include preloadedarguments, wherein modifying the current context settings may includemodifying preloaded arguments.

[0051] The argument software module 26 is further adapted to update andsubmit all arguments as required if the context changes, and to refer tothe associated settings, parse the criteria into arguments, and pass theargument to an external service and submit the arguments, so as tocreate and update a corresponding comparison database 16. The resultsresolution software module 24 is adapted to evaluate the contextdatabase 18 against each comparison database 16 based upon flags forcriteria or arguments, upon notification by the argument software module26. The flags include designations regarding boolean operators anddisplay axes, and the flags include designations regarding exclusions.

[0052] The system 10 may further include a display axis software module28 for generating axes for the display of search criteria matches,responsive to the interaction of the results resolution software module24 with the display axes. The display axis software module 28 is adaptedto define the relative emphasis or de-emphasis of search criteriamatches, for conveying matches to the user 12, and for grouping thereof,for presentation to the user 12. The display axis software module 28 isfurther adapted to consider each display axis and its designatedpresentation parameters, updating the display, and generating settingsbased thereon. It is also adapted to convey respective matches so asdistinguish results derived through one comparison database 16 fromresults derived through another comparison database 16. The search axescomprise distinct search submissions. A search axis includes acomparison database 16 associated therewith. Each display axis isadapted to display the relationship between the source criteria in thecriteria queue and the results generated by the criteria, and tocommunicate variations in intensity for conveying the intensity of asearch criteria match. The display axes are adapted to be combined in aplurality of ways. The display axis software module 28 is adapted toassign a display property based upon the settings. A comparison database16 and a related argument each include corresponding axes, and thecorresponding axes are adapted to maintain the relationship between thecomparison database 16 and the argument.

[0053] The results resolution software module 24 is adapted to displaysubstantially immediately the context link display propertiesadjustments, and to accumulate the context link display propertiesadjustments for subsequent display. The results resolution softwaremodule 24 is further adapted to adjust each display axis to emphasizeincrement, and to adjust each display axis to de-emphasize increment andemphasize decrement. The results resolution software module 24 is alsoadapted to adjust each display axis to emphasize maximum, and to adjusteach display axis to de-emphasize maximum and emphasize minimum.

[0054] Further, the system 10 may include a control state softwaremodule 30 for enabling the user to manipulate the system 10, and forproviding feedback to the user 12 regarding the progress of theoperation tied to the control. The control state software module 30 isadapted to indicate that control has been activated by the user, andthat control has contacted the associated process. The control statesoftware module 30 is further adapted to indicate the progress of aprocess, and to indicate that a process is complete. The control statesoftware module 30 is also adapted to indicate that control is availableto be activated, or that control is not available to be activated by theuser. The control state software module 30 is adapted to enable the userto perform other actions without awaiting completion of a process, andto be used for controls accessible to the user.

[0055] Search criteria matches comprise search criteria match links.Emphasis of search criteria match links comprises the conveyance of therelevancy of links within the current context. De-emphasis of searchcriteria match links comprises the conveyance of the lack of relevancyof links within the current context. Match links comprise common linksbetween the comparison database 16 and the context database 18. Thecontext links include display properties, and the results resolutionsoftware module 24 is further adapted to adjust the context link displayproperties for each match of a comparison link to that of a contextlink. The system 10 further includes an element for connecting thesystem 10 to a search engine 14, comprising for example a data bus. Thesearch engine connecting element is further adapted to connect to asearch engine optimized for searching context and returning results in aspecific format.

[0056] The system 10 may also include a user interface display in abrowser window. The user interface display includes a title bar. Thetitle bar includes an identifier component for identifying the systemprovider, a context selector component, and an about link component. Thecontext selector component is adapted to enable the user to select thecontext for conducting subsequent operations, and comprises a mutuallyexclusive list. The about link component comprises a window whichincludes miscellaneous information. The title bar also includes a helplink component, a current context path component, and a currentsub-context component. The help link component comprises a window whichincludes help information. The current context path component is adaptedto identify the current link path which leads from the top context levelto the current sub-context. The clicking of a link in the link pathchanges the current context to the link clicked, and updates the currentcontext to indicate the change. The current sub-context component isadapted to identify the current sub-context and task progressinformation.

[0057] The title bar also includes a search criteria entry field, asearch button, a refine button, and an advanced link component. Thesearch criteria entry field is adapted to enable the user to entersearch criteria, and to accommodate text handling functionality. Thesearch button is adapted to execute a search operation upon pressingthereof, to add the search operation item to a criteria queue if thequeue is empty, to execute an update, and to replace the currentcriteria in a criteria queue if the queue contains a search operationitem. The refine button is adapted to execute a refine operation uponpressing thereof, to add the current criteria to a criteria queue, andto execute an update operation. The advanced link component is adaptedto enable the user to access advanced search settings and functionality.

[0058] The title bar further includes a refine criteria queue, a currentcontext display, and a search engine title bar. The refine criteriaqueue includes preset and user specified criteria, and is adapted toenable the user to modify the criteria therein, and to enable the userto make changes and execute an update operation. The current contextdisplay includes the current context comprising links, content, andlayout therefor. The search engine title bar is adapted to display acurrent search engine, and to enable the user to change the currentsearch engine. The title bar further includes a goto link, a settingslink, and a current search results display. The goto link is adapted toopen a window for displaying a currently selected search engine window,and to pass a current argument to a current search engine. The settingslink is adapted to open a window for enabling the user to control thebehavior of a search engine, and to vary the settings depending upon acurrently selected search engine. The current search results displayincludes a window for displaying the results of a current search engine.

[0059] In a method of operating the system, for example, as illustratedin FIGS. 3-7, the user may type in the search service address 32 in theURL field for access thereto. The search service window 34 may includean index 36, a Search Term Entry Field 38, and a Search Refine Control40. An area 42 thereof may display search results, and may be blankinitially. For a user action of entering a search term, the user maytype a term into the search term entry field, and click on a findbutton. The field may then be cleared and the term placed in a SearchTerm History list. A result index may then be updated to display theresult of the search. Certain items may then be highlighted, whileothers are lowlighted. Highlights may indicate that there are searchterm matches within the category, and lowlights may indicate the absenceof search term matches within the category. A search result list areawhich may be below the result index may display for example the twentytop results with a more button for access to further top results. Aresult refine control may display the search term which the user hasjust performed a search with, which may appear below preset itemstherein.

[0060] The user in such a method may then type another term into thesearch term entry field and click on the find button. The result searchterm entry field may be cleared, and the term may be placed in theSearch Term History List, and appear above the previous term. The resultindex may then be cleared of highlights and lowlights, and then updatedto display the result of the current search term. Certain items my thenbe highlighted and others lowlighted, with highlights indicating thatthere are search term matches within the category, and lowlightsindicating the absence of search term matches within the category. Thesearch result list area may then be clear of the previous results fromthe previous searches, and the system may display the top twenty resultswith a more button. The result refine control window may then be clearedof the previous search term, and the current search term may bedisplayed therein.

[0061] For a user action of adding a search refine term, the user maytype another term into the search term entry field. Instead of clickingon a find button, the user may click on the refine button 44. Clickingon a back button may undo the previous refine action. Continuing toclick on the back button may undo all refine actions until there arenone left. Clicking on a forward button may redo the previously undonerefine actions. All actions may have an immediate effect on the displayscreen. The action of the result search term entry field may then be thesame as when the user clicks on the find button, in that the field maybe cleared and the term placed on the Search Term History List,appearing above the previous term. The results index may then be clearedof highlights and lowlights, and then updated to display the merging ofthe results of the previous search and the current search. Results indexitems may then appear highlighted if found within the index categorycontaining a match for one of the search terms, and lowlighted if foundwithin the index category containing a match for none of the searchterms.

[0062] The highlight in such action may be variable for the resultsindex, and also for the search result list, in that if the found item iswithin the index category containing a match for more than one of thesearch terms, its highlight display value may be increased. Thegradations of highlight values may be based on the number of activesearch terms. This system and method enables the user to constrictcertain boolean search arguments in a natural way, accommodating OR andAND arguments. The result from the previous search may then be clearedfrom the search results area. The system may then display the top twentyresults of the search conducted with the previous search term and thecurrent search term as the search engine arguments, and may provide themore button. The previous search term may remain in its place in therefine control window, with the current term appearing below theprevious term.

[0063] For a user action of refine control by modifying a search term,the user may modify the effect that any preset or search term has on theindex and result list. Clicking on the term in the refine control windowmay cause the display effect to cycle through primary preset states.Clicking on the term may display a menu 46 that shows the current stateof the term, and enables control over these states and access to otherfunctionality, as seen in FIG. 4. For primary preset states, changingthe preset state may have an immediate effect on the index and searchresult list display. The states of each preset and term may be indicatedin the display of the preset and term of the refine control window. Whenin a disabled state, the term is not considered when resolving the indexand/or list display. When in an emphasize state, the term is applied tothe index and the search result list, with matches emphasized orhighlighted. When in a de-emphasized or highlighted. When in ade-emphasize state, the term is applied to the index and the searchresult list, with matches de-emphasized or lowlighted in the index, andexcluded in the search results list. The user may use de-emphasize torefine a search to exclude things, as to exclude e-commerce items bysetting a buy preset to de-emphasize.

[0064] For a user action of clicking on an index item, the index windowmay be updated so that it displays the appropriate sub-index. All activerefine control presets and terms may then be applied to the currentindex and displayed appropriately. The search list may then beregenerated, utilizing all of the active refine control presets andterms in addition to the appropriate sub-index context arguments. For auser action of clicking on a search result item or an index result itemin a search result list, the user may then be taken to the appropriateitem and page. For a user action of closing the search service andopening the search service again, closing the window may clear allqueues. Returning to the search service also may return to clearedsearch entry fields, refined control queues, and refine control presetsdisabled. Search parameters and states may be saved as proceduralbookmark.

[0065] In the operation of the system 10 of the invention, as seen inFIG. 8, the user may place a term in a search entry field, and may addcriteria through the control state software module 30, at step 48, toappend the entry to a criteria queue, and to set an operator to a systemdefault. The user may modify the criteria through the control statesoftware module 30, at step 50, and may modify the term to edit thecharacters in the term, and modify the properties of the term. Modifyingproperties may comprise modifying a database generation mapping,modifying a database determination mapping, modifying an axis, andmodifying an operator state. The user may change a context through thecontrol state software module 30, at step 52. A content or a layoutdisplayed on a page may be changed, and a sub-context link may beclicked on for change. A context database 18 may be generated, at step54, generating a context database 18 which may be pre-defined, and whichmay comprise links or URLs in a current context. Generating may furthercomprise generating the context database which includes further URL linkaddresses subordinate to the links which appear in a context page.Generating further comprises generating the context database wherein thesubordinate links are linked directly or through other intermediatelinks to parent links which appear in the current context.

[0066] A submission argument may be constructed and submitted, at step56. Constructing a submission argument may comprise constructing thesubmission argument for controlling the generating of a comparisondatabase 16, and may comprise influencing a context in a submissionargument. Constructing may further comprise constructing a single termsubmission argument, constructing a multiple term submission argument,or constructing a combination submission argument. Submitting maycomprise passing arguments to other systems based on system settings, atstep 58, and may further comprise the user modifying a submissionparameter, and the resubmitting of results affected by the modifiedsubmission parameters. Constructing may further comprise constructingthe submission argument which includes information for generating anddefining the comparison database, constructing the submission argumentfor controlling the generating of a static comparison database, andconstructing the submission argument for controlling the generating of aprocedure for defining, generating, and looking up a comparisondatabase. Influencing may comprise enabling a current context to affectthe constructing of the submission argument, and combining additionalmodifiers with other components. Single term constructing may compriseentering a single term in a search entry field, and generating acriteria and applying system and user settings. Multiple termconstructing may comprise entering multiple terms in a search entryfield, and interpreting the multiple terms through associated process,system, and user settings. Combination constructing may comprisecombining submission arguments into a single submission argument byapplying system and user settings.

[0067] Passing may comprise passing arguments to systems residinglocally on a client. Combining comprises determining the modifiers byanalyzing the current context and other parameters and procedures.Entering comprises pressing a search button, and assigning a defaultboolean AND operator. Multiple term constructing comprises applying theassociated settings to the criterion. Passing arguments comprisesaccessing the local client system through a data bus, and accessing thelocal client system through remote access means.

[0068] Results may be received and resolved, at step 60. Receivingresults may include maintaining the relationship between the result andthe submission, preserving a ranking returned with the results forsubsequent application during displaying, and receiving each resultwhich comprises a comparison database. Receiving results may furthercomprise composing the results, associating additional description withthe result, and associating additional links with the result. Resolvingthe results may comprise resolving the relationship of each comparisondatabase against a current context database, at step 62. Composingresults comprises determining that results returning more than one hitinclude at least one associated link comprising a URL. Relationshipresolving comprises comparing the context database 16 against eachsubmission argument database. Determining results includes a URLappearing as a distinct address, and a URL appearing as part of anaddress path. Composing further comprises accumulating match counts foreach link in the context. Composing further comprises attributingmatching subordinate context links to corresponding parent linksappearing in the current context.

[0069] A current context may be displayed, at step 64. Displaying mayinclude updating the display of the current context based on system anduser settings. Displaying includes displaying links in the currentcontext. Displaying links includes de-emphasizing links in the currentcontext that do not include a match with respect to submission results,and appropriately displaying links which include varying degrees ofmatching. Displaying further comprises specifying that different searchaxes are presented using symbologies and display technologies forindicating the de-emphasis and emphasis distinctions. Displaying linksincludes determining and applying display information as it occurs, andaccumulating display information for consolidated determining andapplying thereof.

[0070] The present invention further includes a method of controllingthe client side and process side of a client-process operation, asillustrated in FIG. 9, for organizing database matches generated byprocessing search criteria established and submitted by a user through asearch engine adapted to generate databases, in a system for definingand grouping search criteria match results on the basis of the relativeemphasis or de-emphasis thereof for presentation to the user.Controlling may comprise activating a control for controlling the clientside and the process side. Activating may comprise locally executingthrough a locally executed module, or remotely executing through aremote process. Remotely executing comprises remotely executing througha server. Activating may comprise pressing a menu button, and accessinga menu which includes further control options. Pressing may includecanceling a process upon pressing the menu button while the controlindicates it is engaged in the process.

[0071] The control may indicate whether it is available for activation,at step 66. The user may activate the control and the control mayindicate the state thereof, at step 68. Activating may comprise pressingthe button. Activating may include the control providing feedbackthrough a visual change and audio cue, and indicating that the buttonhas been pressed and that the client is executing a specific procedure,through updating the control display, at step 70. Activating may furtherinclude the client attempting to contact an associated process. Thecontrol may remain in a state until receiving acknowledgment from theprocess. The process side may acknowledge the control activation.

[0072] The process side may return an acknowledgment to the client uponthe contacting of the process side, at step 72. The user may be notifiedthrough a visual cue, an audio cue, a visual change, or an audio change.The client may await the associated task program update and completion,at step 74. The system may complete a requested task and notify theclient, at step 76. Completing may include completing client side andprocess side procedures. The user may be notified of task completionthrough a visual cue, or through an audio cue. The system may indicatecompletion to the client side. The control may revert to an appropriatestate. The control may be accessible or inaccessible dependent upon thestate of the application. The control may indicate an error condition.The control may indicate that its associated process is aborting, uponthe user having the option and choosing to abort, at step 78.

[0073] The present invention provides improved systems and methods forutilization in many different applications. They are adapted to operateon existing content and layout, and they take advantage of pre-existinguser familiarity of organization and structure of a collection ofinformation. They may be applied for example to any web page, and mayalso be applied to the display of various informational structures, suchas for example finding information contained within computerized fileand directory structures, transportation schedules, or entertainmentevent calendars and schedules.

[0074] The systems and methods herein may be adapted to enable the userto access all information that appears in the screen display, as forexample by moving the control out of a browser window and making itindependent of the screen display. The control may be separatedcompletely from the display, as by being controlled from a differentsource. For example, as the user accesses content, the system may benotified by the site that it should apply a set of parameters to thepresentation of the information, where the user has not explicitlyrequested such action, and the parameters and process may be applied toaffect the current display of content.

[0075] The systems and methods herein may be used on any web page,adding functionality, as by showing the relevancy of the links on a pagebased on a current set of evaluation criteria, without affecting thefunctionality of the page. They may be applied to any data and dataaccess structure or mechanism resembling such structures, includingother applications not strictly considered web-browser applications,such as for example computer system directory listings and schedules.

[0076] It will be apparent from the foregoing that, while particularforms of the invention have been illustrated and described, variousmodifications can be made without departing from the spirit and scope ofthe invention. Accordingly, it is not intended that the invention belimited, except as by the appended claims.

[0077] Examples of a preferred form of source code, for use in carryingout the above described software and firmware steps in conjunction withthe hardware as described above, are included in the CD-R as theofficial copy thereof which is a part of this application andincorporated by reference herein.

What is claimed is:
 1. A method of organizing database matches generatedby processing search criteria established and submitted by a userthrough a search engine adapted to generate databases, in a system fordefining and grouping search criteria match results on the basis of therelative emphasis or de-emphasis thereof for presentation to the user,comprising: the user placing a term in a search entry field; and theuser adding criteria through a control state software module, to appendthe entry to a criteria queue, and to set an operator to a systemdefault.
 2. The method of claim 1, further comprising the user modifyingthe criteria through the control state software module.
 3. The method ofclaim 1, further comprising the user changing a context through thecontrol state software module.
 4. The method of claim 1, furthercomprising generating a context database.
 5. The method of claim 1,further comprising constructing a submission argument.
 6. The method ofclaim 1, further comprising submitting arguments.
 7. The method of claim1, further comprising receiving results.
 8. The method of claim 1,further comprising resolving results.
 9. The method of claim 1, furthercomprising displaying a current context.
 10. The method of claim 2,wherein modifying comprises the user modifying the term, to edit thecharacters in the term.
 11. The system of claim 2, wherein modifyingcomprises the user modifying the properties of the term.
 12. A method oforganizing database matches generated by processing search criteriaestablished and submitted by a user through a search engine adapted togenerate databases, in a system for defining and grouping searchcriteria match results on the basis of the relative emphasis orde-emphasis thereof for presentation to the user, comprising: the userplacing a term in a search entry field; and the user adding criteriathrough control state software means, to append the entry to a criteriaqueue, and to set an operator to a system default.
 13. The method ofclaim 12, further comprising the user modifying the criteria through thecontrol state software means.
 14. The method of claim 12, furthercomprising the user changing a context through the control statesoftware means.
 15. The method of claim 12, further comprisinggenerating a context database.
 16. The method of claim 12, furthercomprising constructing a submission argument.
 17. The method of claim12, further comprising submitting arguments.
 18. The method of claim 12,further comprising receiving results.
 19. The method of claim 12,further comprising resolving results.
 20. The method of claim 12,further comprising displaying a current context.
 21. The method of claim13, wherein modifying comprises the user modifying the term, to edit thecharacters in the term.
 22. The system of claim 13, wherein modifyingcomprises the user modifying the properties of the term.